package com.jc.cloud.sign.bean.dto;

import com.alibaba.fastjson.annotation.JSONCreator;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.jc.cloud.sign.config.validation.FixedValueValidator;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.NonNull;

import java.io.Serializable;

/**
 * @BelongsPackage: com.jc.cloud.sign.bean.dto
 * @Author: whx
 * @CreateTime: 2023-11-15 09:35
 * @Description: TODO
 */
@ApiModel(description = "嵌入web链接 https://console.cloud.tencent.com/api/explorer?Product=essbasic&Version=2021-05-26&Action=ChannelCreateEmbedWebUrl")
@Data
@NoArgsConstructor
public class EmbedWebUrlDTO   {
    @ApiModelProperty("- CREATE_SEAL: 生成创建印章的嵌入页面\n" +
            "- CREATE_TEMPLATE：生成创建模板的嵌入页面\n" +
            "- MODIFY_TEMPLATE：生成修改模板的嵌入页面\n" +
            "- PREVIEW_TEMPLATE：生成预览模板的嵌入页面\n" +
            "- PREVIEW_FLOW：生成预览合同文档的嵌入页面\n" +
            "- PREVIEW_FLOW_DETAIL：生成预览合同详情的嵌入页面\n" +
            "- PREVIEW_SEAL_LIST：生成预览印章列表的嵌入页面\n" +
            "- PREVIEW_SEAL_DETAIL：生成预览印章详情的嵌入页面\n" +
            "- EXTEND_SERVICE：生成扩展服务的嵌入页面")
    @FixedValueValidator(fixedValue = {"CREATE_SEAL","CREATE_TEMPLATE","MODIFY_TEMPLATE","PREVIEW_TEMPLATE","PREVIEW_FLOW","PREVIEW_FLOW_DETAIL","PREVIEW_SEAL_LIST","PREVIEW_SEAL_DETAIL","EXTEND_SERVICE"},message = "必须输入指定值")
    @NonNull
    private String EmbedType;

    @ApiModelProperty("- 当EmbedType取值MODIFY_TEMPLATE，PREVIEW_TEMPLATE时需要填写模板id作为BusinessId\n" +
            "- 当EmbedType取值PREVIEW_FLOW，PREVIEW_FLOW_DETAIL时需要填写合同id作为BusinessId\n" +
            "- 当EmbedType取值PREVIEW_SEAL_DETAIL需要填写印章id作为BusinessId")
    private String BusinessId;

    @ApiModelProperty("是否隐藏控件，只有预览模板时生效")
    private Boolean HiddenComponents;
}
